/* 
 * File:   FileServiceProxy.h
 * Author: nahuel
 *
 * Created on May 24, 2013, 8:29 PM
 */

#ifndef FILESERVICEPROXY_H
#define	FILESERVICEPROXY_H



#include <string>
#include <stdint.h>
#include "client_SocketAsincronico.h"

using namespace TP::Comunicacion;

namespace TP {

class FileServiceProxy {
    private:
        SocketAsincronico* _conexion;
        
    public:
        FileServiceProxy(SocketAsincronico* conexion);
        
        // Declara un archivo nuevo
        void DeclareFile(std::string& fileName);
        
        // Agrega al final del archivo fileName el bloque de bytes chunk
        bool PutFileChunk(std::string& fileName, void* chunk, size_t chunkSize);
        
        // Termina de definir el archivo
        bool DefineFile(std::string& fileName);
        
        //FileServiceProxy(const FileServiceProxy& orig);
        virtual ~FileServiceProxy();
};

}

#endif	/* FILESERVICEPROXY_H */

